<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet [
  <!ENTITY copy "&#169;">
  <!ENTITY nbsp "&#160;">
  <!ENTITY laquo "&#171;">
  <!ENTITY raquo "&#187;">
]>
<xsl:stylesheet xmlns="http://www.w3.org/1999/xhtml"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                version="1.0">


  <xsl:template match="/">
    <xsl:apply-templates />
  </xsl:template>

  <xsl:template name="pager1">
    <xsl:param name="node"></xsl:param>

    <xsl:variable name="sort" select="/page/content/main/@sort" />
    <xsl:variable name="family" select="/page/content/main/@family" />
    <xsl:variable name="fromTopic" select="/page/content/main/@fromTopic" />

    <!-- page left -->
    <div class="fclr">   <xsl:text> </xsl:text></div>

    <xsl:if test="number($node/page_count) &gt; 1">

      <div class="ArtPager">



        <div class="pageLeft">
          <xsl:text> </xsl:text>
        </div>
        <a href="#" class="pageCenter">
          <xsl:choose>
            <xsl:when test="number($node/current_page) &gt; 1">
              <xsl:attribute name="href">
                <xsl:text>?page=</xsl:text>
                <xsl:value-of select="number($node/current_page) - 1"/>

                <xsl:if test="string-length($sort) &gt; 0">
                  <xsl:text>&amp;sort=</xsl:text>
                  <xsl:value-of select="$sort"/>
                </xsl:if>

                <xsl:if test="string-length($family) &gt; 0">
                  <xsl:text>&amp;family=</xsl:text>
                  <xsl:value-of select="$family"/>
                </xsl:if>

                <xsl:if test="string-length($fromTopic) &gt; 0">
                  <xsl:text>&amp;fromTopic=</xsl:text>
                  <xsl:value-of select="$fromTopic"/>
                </xsl:if>


              </xsl:attribute>
            </xsl:when>
            <xsl:otherwise>
              <xsl:attribute name="style">
                cursor:default;
              </xsl:attribute>
            </xsl:otherwise>
          </xsl:choose>
          <xsl:text> </xsl:text>
          назад
        </a>
        <div class="pageRight">
          <xsl:text> </xsl:text>
        </div>


        <xsl:call-template name="pager1.counter">
          <xsl:with-param name="i" select="$node/start_page"></xsl:with-param>
          <xsl:with-param name="node" select="$node"></xsl:with-param>
        </xsl:call-template>


        <span class="innerText2"> из </span>

        <div class="pageLeft">
          <xsl:text> </xsl:text>
        </div>
        <a href="?page={$node/last_page}" class="pageCenter">

          <xsl:if test="string-length($sort) &gt; 0">
            <xsl:attribute name="href">
              <xsl:text>?page=</xsl:text>
              <xsl:value-of select="$node/last_page"/>
              <xsl:text>&amp;sort=</xsl:text>
              <xsl:value-of select="$sort"/>
            </xsl:attribute>
          </xsl:if>

          <xsl:if test="string-length($family) &gt; 0">
            <xsl:attribute name="href">
              <xsl:text>?page=</xsl:text>
              <xsl:value-of select="$node/last_page"/>
              <xsl:text>&amp;family=</xsl:text>
              <xsl:value-of select="$family"/>
            </xsl:attribute>
          </xsl:if>


          <xsl:if test="string-length($fromTopic) &gt; 0">
            <xsl:attribute name="href">
              <xsl:text>?page=</xsl:text>
              <xsl:value-of select="$node/last_page"/>
              <xsl:text>&amp;fromTopic=</xsl:text>
              <xsl:value-of select="$fromTopic"/>
            </xsl:attribute>
          </xsl:if>


          <xsl:value-of select="$node/last_page"/>
        </a>
        <div class="pageRight">
          <xsl:text> </xsl:text>
        </div>

        <div class="pageLeft">
          <xsl:text> </xsl:text>
        </div>
        <a href="#" class="pageCenter">
          <xsl:choose>
            <xsl:when test="number($node/current_page) &lt; number($node/last_page)">
              <xsl:attribute name="href">
                <xsl:text>?page=</xsl:text>
                <xsl:value-of select="number($node/current_page) + 1"/>


                <xsl:if test="string-length($sort) &gt; 0">
                  <xsl:text>&amp;sort=</xsl:text>
                  <xsl:value-of select="$sort"/>
                </xsl:if>

                <xsl:if test="string-length($family) &gt; 0">
                  <xsl:text>&amp;family=</xsl:text>
                  <xsl:value-of select="$family"/>
                </xsl:if>


                <xsl:if test="string-length($fromTopic) &gt; 0">
                  <xsl:text>&amp;fromTopic=</xsl:text>
                  <xsl:value-of select="$fromTopic"/>
                </xsl:if>

              </xsl:attribute>
            </xsl:when>
          </xsl:choose>
          далее         <xsl:text> </xsl:text>
        </a>
        <div class="pageRight">
          <xsl:text> </xsl:text>
        </div>

        <div class="fclr">   <xsl:text> </xsl:text></div>
      </div>
      <!-- pager right -->
    </xsl:if>
  </xsl:template>

  <xsl:template name="pager1.counter">
    <xsl:param name="i"></xsl:param>
    <xsl:param name="node"></xsl:param>

    <xsl:variable name="sort" select="/page/content/main/@sort" />
    <xsl:variable name="family" select="/page/content/main/@family" />
    <xsl:variable name="fromTopic" select="/page/content/main/@fromTopic" />

    <xsl:choose>
      <xsl:when test="number($node/current_page) = number($i)">
        <div class="pageLeftActive">
          <xsl:text> </xsl:text>
        </div>
        <a  href="#" class="pageCenterActive" style="cursor:default;">
          <xsl:value-of select="$i"/>
        </a>
        <div class="pageRightActive">
          <xsl:text> </xsl:text>
        </div>
      </xsl:when>
      <xsl:otherwise>
        <!-- show -> -->
        <div class="pageLeft">
          <xsl:text> </xsl:text>
        </div>
        <a href="?page={$i}" class="pageCenter">

          <xsl:if test="string-length($sort) &gt; 0">
            <xsl:attribute name="href">
              <xsl:text>?page=</xsl:text>
              <xsl:value-of select="$i"/>
              <xsl:text>&amp;sort=</xsl:text>
              <xsl:value-of select="$sort"/>
            </xsl:attribute>
          </xsl:if>

          <xsl:if test="(string-length($family) &gt; 0) or (string-length($fromTopic) &gt; 0)">
            <xsl:attribute name="href">
              <xsl:text>?page=</xsl:text>
              <xsl:value-of select="$i"/>
              <xsl:text>&amp;family=</xsl:text>
              <xsl:value-of select="$family"/>
              <xsl:text>&amp;fromTopic=</xsl:text>
              <xsl:value-of select="$fromTopic"/>
            </xsl:attribute>
          </xsl:if>


          <!--xsl:if test="string-length($fromTopic) &gt; 0">
            <xsl:attribute name="href">
              <xsl:text>?page=</xsl:text>
              <xsl:value-of select="$i"/>
              <xsl:text>&amp;fromTopic=</xsl:text>
              <xsl:value-of select="$fromTopic"/>
            </xsl:attribute>
          </xsl:if -->


          <xsl:value-of select="$i"/>
        </a>
        <div class="pageRight">
          <xsl:text> </xsl:text>
        </div>
      </xsl:otherwise>
    </xsl:choose>


    <!-- test -> -->

    <xsl:if test="(number($i) &lt; (number($node/start_page)+4)) and number($i) &lt; (number($node/last_page)) ">
      <xsl:call-template name="pager1.counter">
        <xsl:with-param name="i" select="$i+1"></xsl:with-param>
        <xsl:with-param name="node" select="$node"></xsl:with-param>
      </xsl:call-template>
    </xsl:if>

  </xsl:template>

</xsl:stylesheet>